// import com.alibaba.druid.sql.ast.SQLObject;
// import com.alibaba.druid.sql.dialect.mysql.ast.statement.MySqlStatementImpl;
// import com.alibaba.druid.sql.dialect.mysql.visitor.MySqlASTVisitor;

// import java.util.Collections;
// import java.util.List;

#include "MySqlLeaveStatement.h"
#include "../../../../ast/SQLObject.h"
#include "../../visitor/MySqlASTVisitor.h"

MySqlLeaveStatement::MySqlLeaveStatement()
{
}

MySqlLeaveStatement::MySqlLeaveStatement(string_ptr labelName)
{
  this->labelName = labelName;
}

// @Override
void MySqlLeaveStatement::accept0(MySqlASTVisitor_ptr visitor)
{
  visitor->visit(SharedObject(MySqlLeaveStatement));
  visitor->endVisit(SharedObject(MySqlLeaveStatement));
}

string_ptr MySqlLeaveStatement::getLabelName()
{
  return labelName;
}

void MySqlLeaveStatement::setLabelName(string_ptr labelName)
{
  this->labelName = labelName;
}

// @Override
SQLObject_list_ptr MySqlLeaveStatement::getChildren()
{
  SQLObject_list_ptr tmp = std::make_shared<std::list<SQLObject_ptr>>();
  return tmp;
}
